The present invention relates to generating registration data for combining real and virtual images.
For some years, computers have been used to generate three dimensional representations of objects and spaces which, increasingly, have been used for technical and artistic applications. As computer power has increased, it has become possible to generate image frames at or near real time and with increasing spatial definition. Thus, much work has been done in terms of developing computer generated images which appear real and the process of interacting with such environments has become known as xe2x80x9cvirtual realityxe2x80x9d.
In the art of computer graphics, a synthesised three dimensional space may be referred to as a virtual world space in which a two dimensional view into said world space is generated from the position of a notional virtual camera within said space, having properties similar to real cameras in the real world.
In U.S. Pat. No. 5,479,597, assigned to the present applicant, virtual or synthesised images are combined with real images to produce a composite output. Thus, part of said output is derived from a virtual world space with the remainder of said output being derived from a real set. Thus, the environment as a whole is known as a virtual set.
An advantage of virtual sets is that relatively little real studio space is required because much larger virtual environments may be represented in the set. Furthermore, virtual sets may be changed almost instantaneously and thereby provide a new creative tool, having capabilities which extend beyond the limitations of real studios, while significantly reducing operational costs.
The generation of a virtual world space, for application within a virtual set, is preferably done as an independent creative exercise, making data sets available to production facilities. However, a problem arises in that the actual geometry of real sets vanes such that the geometry defined by a virtual data set may not align as it should with the real constraints of a virtual studio.
Virtual sets distinguish themselves over established blue screen techniques because of the greater extent to which objects and talent may interact within the virtual environment. However, in order for this interaction to create the desired illusion, it is essential for the virtual world space to accurately align with certain aspects of the geometry of the real set. For example, if talent is to be seen walking upon a floor, it is essential for a floor defined within the virtual world space to accurately align with the real floor of the real set. Further constraints could then be placed on the alignment if the talent is to interact with other virtual objects within the set.
Conventionally, registration of the virtual world space to the real set has been performed manually by trial and error resulting in modifications being made to the world space data in order to align it with a particular real set. This creates two significant disadvantages. Firstly, the alignment process can become time consuming and require significant expertise on the part of the operators. Secondly, each alignment process results in the world space data being modified for that particular real set geometry.
According to a first aspect of the present invention, there is provided a method of generating registration data for a virtual set, wherein said registration data defines a transformation for virtual scene data to facilitate the combination of said virtual data with image data derived from a real set, comprising steps of identifying a plane in a real set; associating said real plane to a plane defined in a virtual scene; and determining differences in position between said real plane and said virtual plane to produce registration data.
In a preferred embodiment, planes in the real set are defined by identifying the position of a plurality of co-planar points.
In a preferred embodiment, a single plane, preferably the floor, is used for registration purposes but in an alternative embodiment a plurality of planes are identified in the real set and each of these planes is associated to a respective plane in the virtual scene.
Preferably, the virtual scene data is defined by a scene tree, relating a plurality of objects with respect to a root origin.
Preferably, the position determining step includes removing scaling effects from the virtual plane with reference to a scene tree of objects. In a preferred embodiment, the difference determining step also includes determining a relationship between a real plane and a corresponding virtual plane in terms of translations and rotations. Preferably, the rotations and translations are defined by matrices and a registration matrix is generated by a concatenation of rotation and translation matrices.
According to a second aspect of the present invention, there is provided a virtual set for producing image data in which virtual scene data is combined with images derived from a real set, comprising means for generating an image of the real set; rendering means for rendering an image of a virtual set from said virtual scene data, in combination with registration data; and combining means for combining the real image with said rendered image, wherein said registration data is determined by a process of matching a positional attribute of a plane common to said real set and to said virtual set.
Preferably, means are included for determining a relationship between a real plane and a corresponding virtual plane in terms of translation and rotations. Preferably, means are included for defining said rotations and translations in the form of matrices, including means for generating a registration matrix by concatenation of said rotation and translation matrices.